在上一篇文章中有提到如何「創建分支」以及「切換分支」的方法,以下圖當範例來解釋:下圖的情況是 master 版本比較舊,commit 的檔案位置是在 v3,而 func1 的版本比較新,commit 的檔案位置在 v4。

倘若我們也想讓 master 擁有 v4 的 commit 的話,接下來就應該將兩個分支合併,這樣 master 跟 func1 所擁有的 commit 就會相同了。
而合併的指令也很簡單,只要先將 head 移動到較舊的分支上,再使用以下指令就可以進行合併了(注意:以下指令中的 <branch_name> 指的是較新版本的分支)
git merge <branch_name>

接下來,就讓我們實際操作看看吧!
首先,先使用 git log 查詢一下目前的狀況:

可以看到 func1 這條分支的 commit 位置是在 replace(*, +),而 master 這條分支則是在 Create README.md 的這個 commit 上,由此可以看出 master 所在的位置是比較舊的 commit,因此,接下來我們要將 func1 跟 master 合併。
因為 master 的 commit 是比較舊的,所以我們要先將 head 移動到 master 上。
git checkout master

接下來再使用以下指令將 func1 合併到 master 上。
git merge func1

這樣就成功將 func1 和 master 上的 commit 合併拉!
在本次的解說中,我們可以更清楚 git status 跟 git log 的差異,在建立跟合併分支的過程中我們經常使用 git log 這個指令來查看狀態,這是因為 git log 是負責管理本地數據庫的,而 git status 則是負責管理本地檔案和索引區的。